package com.github.prontera.domain;

import java.math.BigDecimal;
import java.time.OffsetDateTime;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.github.prontera.model.BasicDomain;
import com.github.prontera.util.converter.jackson.OffsetDateTimeToIso8601Serializer;

import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 
 * a_client_activity-用户活动
 *
 */
@ToString
@EqualsAndHashCode(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class ClientActivity extends BasicDomain{

	private static final long serialVersionUID = 1L;
    
	/**
	 * 客户端ID
	 */
	@ApiModelProperty(value = "客户端ID")
    private Long clientId;
	/**
	 * 支付时间
	 */
	@ApiModelProperty(value = "支付时间")
	@JsonSerialize(using = OffsetDateTimeToIso8601Serializer.class)
    private OffsetDateTime payTime;
	/**
	 * 活动ID
	 */
	@ApiModelProperty(value = "活动ID")
    private Long activityId;
	/**
	 * 实际支付金额
	 */
	@ApiModelProperty(value = "实际支付金额")
    private BigDecimal payAmount;
	
	/**
	 * 实际支付金额
	 */
	@ApiModelProperty(value = "客户")
    private Client client;
    
    public Client getClient() {
		return client;
	}

	public void setClient(Client client) {
		this.client = client;
	}

	public ClientActivity(){
    
    }
    
    public Long getClientId() {
        return this.clientId;
    }
    
    public void setClientId(Long clientId) {
        this.clientId = clientId;
    }
    public OffsetDateTime getPayTime() {
        return this.payTime;
    }
    
    public void setPayTime(OffsetDateTime payTime) {
        this.payTime = payTime;
    }
    public Long getActivityId() {
        return this.activityId;
    }
    
    public void setActivityId(Long activityId) {
        this.activityId = activityId;
    }
    public BigDecimal getPayAmount() {
        return this.payAmount;
    }
    
    public void setPayAmount(BigDecimal payAmount) {
        this.payAmount = payAmount;
    }
    
}
